package com.ele.Service.impl;


import com.ele.Dao.DaoImpl.ShopDaoImpl;
import com.ele.Dao.ShopDao;
import com.ele.Pojo.PageResult;
import com.ele.Pojo.Shop;
import com.ele.Service.ShopService;

import java.sql.SQLException;
import java.util.List;

public class ShopServiceImpl implements ShopService {
    private ShopDao shopDao = new ShopDaoImpl();
    public Integer shopAdd(Shop shop) {
        try {
            return this.shopDao.shopAdd(shop);
        }catch (SQLException e){
            e.printStackTrace();
        }
        return null;
    }

    public PageResult<List<Shop>> shopList(String currentPage, String pageSize, String businessId) {
        try {
            // 分页和条件查询数据
            List<Shop> list =  this.shopDao.shopList(currentPage,pageSize,businessId);
            // 需要查询数据库的总记录数
            Long total = this.shopDao.selectCount(businessId);
            // 手动创建一个用于封装分页结果集的对象
            PageResult<List<Shop>> pageResult = new PageResult<List<Shop>>();
            // 手动给分页结果集的对象上设置参数 ， 分页查询出来当前页面需要显示的数据
            pageResult.setDatas(list);
            // 手动给分页结果集的对象上设置参数 ， 数据表的总记录数
            pageResult.setTotal(total);
            return pageResult;
        }catch (SQLException e){
            e.printStackTrace();
        }
        return null;
    }

    public PageResult<List<Shop>> shopAuditList(String currentPage, String pageSize, String shopName, String status) {
        try {
            // 分页和条件查询数据
            List<Shop> list =  this.shopDao.shopAuditList(currentPage,pageSize,shopName,status);
            // 需要查询数据库的总记录数
            Long total = this.shopDao.selectCount();
            // 手动创建一个用于封装分页结果集的对象
            PageResult<List<Shop>> pageResult = new PageResult<List<Shop>>();
            // 手动给分页结果集的对象上设置参数 ， 分页查询出来当前页面需要显示的数据
            pageResult.setDatas(list);
            // 手动给分页结果集的对象上设置参数 ， 数据表的总记录数
            pageResult.setTotal(total);
            return pageResult;
        }catch (SQLException e){
            e.printStackTrace();
        }
        return null;
    }


    @Override
    public Integer changeStatus(String shopId, String status) {
        try{
            return this.shopDao.changeStatus(shopId,status);
        }catch (SQLException e){
            e.printStackTrace();
        }
        return null;
    }


}
